package com.coderman.infosys.auth.domain.repository;

import com.coderman.infosys.auth.domain.bo.authority.AuthorityBO;


/**
 * @Description:权限管理仓库接口
 * @Author:shenshuai
 * @CreateTime:2022-01-02 15:27:38
 * @version v1.0
 */
public interface AuthorityRepository{

	/**
	 *
	 * @Description 给角色构建权限
	 * 数据权限，行政权限，系统权限
	 * @param authorityBO
	 * @return Boolean
	 */
     Boolean authToRole(AuthorityBO authorityBO);

	/**
	 *
	 * @Description 给角色更新权限
	 * @param authorityBO
	 * @return Boolean
	 */
     Boolean updateAuthToRole(AuthorityBO authorityBO);

	/**
	 *
	 * @Description 根据权限code禁用权限资源
	 * @param authorityCode
	 * @return Boolean
	 */
     Boolean disableAuthority(String authorityCode);

	/**
	 *
	 * @Description 根据权限code查询权限资源
	 * @param authorityCode
	 * @return AuthorityBO
	 */
     AuthorityBO getByCode(String authorityCode);

	/**
	 *
	 * @Description 根据角色code查询权限资源
	 * @param roleCode
	 * @return AuthorityBO
	 */
     AuthorityBO getByRoleCode(String roleCode);



	/**
	 *
	 * @Description 根据角色组code查询权限资源
	 * @param roleGroupCode
	 * @return AuthorityBO
	 */
	AuthorityBO getByRoleGroupCode(String roleGroupCode);

}